草庐IT

Ruby Regex 舍入尾随零

全部标签

javascript - 阻止 Javascript 舍入大数字 ID

下面会弹出一个警告框:211466719468855300。为什么会发生这种情况,即使我尝试将其转换为字符串?如何准确阅读?HTML:Delete​JS:$('.delete-link').click(function(e){var$item=$(this);varitemID=String($item.data('id'));alert(itemID);});fiddle:http://jsfiddle.net/zUbym/1/ 最佳答案 发生这种情况有两个原因:jQuery是否支持将“data-”属性值转换为“适当的”类型这么大

javascript - 为什么尾随逗号不会将 undefined 添加到 javascript 数组?

正在编写一个函数,该函数接受一个数字数组并返回true和索引(如果有缺失的数字)或false(如果没有缺失的数字)。我刚刚注意到一些让我困惑的数组。像这样的数组[,1,2,3,4]将打印[undefined,1,2,3,4]数组以逗号开头,输出对我来说有意义但是为什么[1,2,3,4,]//Noticethatthearrayendswithacomma打印[1,2,3,4]我假设输出是[1,2,3,4,undefined]。有谁知道为什么会这样吗? 最佳答案 尾随逗号(“省略”)被忽略:Ifanelementiselidedatt

javascript - 具有 3 位小数的 toFixed(2) 的可靠 JS 舍入数

我只是想对1.275.toFixed(2)求和,我期望返回1.28,而不是1.27。使用各种计算器和四舍五入到最接近的百分位的简单方法,如果最后一位大于或等于五,则应该四舍五入。p>如果这不适用于toFixed(2),它会怎样?有人问console.log(1.275.toFixed(2))是否打印出1.28,这是MacOSChrome版本55.0.2883.95(64位)的快速截图 最佳答案 toFixed()方法的舍入不可靠(请参阅ÁlvaroGonzález'answer了解为什么会这样)。在当前的Chrome和Firefox

javascript - 是否可以在 Jade 中舍入?

如标题所示,我正在寻找一种在Jade中取整的方法。我有一个看起来像这样的变量:9.039444444444445。是否可以将此数字输出为:9?在此先感谢所有支持我的人。 最佳答案 Jade允许您在模板引擎中运行无缓冲的JavaScript代码。假设您的变量名为number-number=Math.round(number)会将number舍入为最接近的整数,如source中所述在RobertHarvey的评论中,语法是标准的JavaScript,如here所述 关于javascript-

javascript - 舍入到最接近的十的幂

我有一个数字,我需要将它四舍五入到最接近的十的幂。看起来这应该可以在没有一大堆if语句或使用递归或循环的情况下实现,但我不知道最优雅的方法。如果不清楚我的意思,这里有一些例子:f(1)===1f(5)===1f(15)===10f(43)===10f(456)===100f(999)===100澄清一下:我不需要最接近的10的倍数(不是:10、20、30...),而是最接近的10的幂(10、100、1000...)。编辑:据我所知,这不是一个重复的问题。请停止重复询问四舍五入到十的最接近的倍数的问题。这个问题与链接的问题无关,因为它询问四舍五入到最接近的十的幂。如果您想将此问题作为重复

javascript - 我如何将分钟舍入到 momentjs 中最接近的 5 分钟标记?

目前我在一个使用moment.js的网站上工作。我只想使用jquery。我使用以下方法获取当前分钟:varminute=moment().minute();但我想在最近的下一个5分钟标记开始设置闹钟。假设现在是晚上8点38分,var分钟将是38。我想将输入值设置为40(即40分钟)那么我的选择是:000510152025303540455055我可以这样输入项目:varminute=moment().minute();$("#minuteIDoption[value="+minute+"]").prop("selected","selected");我如何做到这一点,而不是找到确切的选

javascript - Firefox 和 Javascript 舍入规则

我不知道我是否遗漏了一些明显的东西,但是......在IE、Opera和Chrome中,我从以5结尾的舍入数字中得到了我期望的结果:125toPrecision(2)=>13011.5toPrecision(2)=>12这是我所期望的。不过,Firefox更“复杂”一点,产生以下内容:125toPrecision(2)=>120//wtf!!!11.5toPrecision(2)=>12经过一番摸索,我得出的结论是Firefox使用了“四舍五入”规则,如果5之前的数字是偶数,则数字向下舍入,如果5之前的数字是奇数数字四舍五入:0.5=>01.5=>22.5=>23.5=>4,etc.我

javascript - 在 JavaScript 舍入函数中硬编码 8191 10485 个值

我在一些遗留代码中看到了以下(奇怪的)Javascript舍入函数。谷歌搜索后,我可以看到它出现在网上的许多地方。但是,我无法弄清楚为什么会出现硬编码值8191和10485。有谁知道包含这些值是否有合理的理由?如果没有,希望我们能消灭模因!functionroundNumber(num,dec){varnewnumber=0;if(num>8191&&num 最佳答案 8191(0x1fff)在二进制表示方面可能很重要,但10485(0x28f5)似乎并不重要。我敢打赌,这是一种解决可感知的浮点舍入错误的技巧。float可能以不可预

c# - Javascript float 问题 - 舍入问题?

我的客户端脚本没有计算出与我的服务器端代码相同的值:例如:varx=(2.85*.1);alert(x);这给出了一个数字0.28500000000000003但是我的服务器端代码(C#)计算出的数字是0.285,当四舍五入到小数点后2位时得到0.28如果我尝试将0.28500000000000003舍入到小数点后两位,我得到0.29。如何让我的Javascript创建一个与我的服务器端代码匹配的图形。看起来我必须经过2次舍入-首先删除尾随的3,然后舍入到所需的小数位。例如:varx=0.2850000000003;x=parseFloat(x.toFixed(3))x=x.toFix

javascript - Math.round 舍入误差

我想将1.006舍入到两位小数,期望输出为1.01当我做varnum=1.006;alert(Math.round(num,2));//Outputs1alert(num.toFixed(2));//Output1.01同样,varnum=1.106;alert(Math.round(num,2));//Outputs1alert(num.toFixed(2));;//Outputs1.11所以每次都使用toFixed()是否安全?toFixed()是否跨浏览器投诉?请给我建议。P.S:我尝试在堆栈溢出中搜索类似的答案,但找不到正确的答案。编辑:为什么1.015返回1.01而1.045